// ErrorPage middleware
exports.errorPage = function (req, res, next) {
  var referer  = req.get('referer');

  res.render404 = function (error) {
    return res.status(404).render('error/error', {
      title: '404 - 找不到该页面。',
      code: 404,
      referer: referer,
      error: error || '您所访问的页面不见了，可能是已经被移除。'
    });
  };

  res.render403 = function (error) {
    return res.status(404).render('error/error', {
      title: '403 - 禁止访问: 访问被拒绝。',
      code: 403,
      referer: referer,
      error: error || '您无权使用所提供的凭据查看此页面，可能是您未登录或者当前登录的用户权限不足。'
    });
  };

  res.renderError = function (error, statusCode) {
    if (statusCode === undefined) {
      statusCode = 400;
    }
    return res.status(statusCode).render('error/error', {
      title: '400 - 服务器出错。',
      code: statusCode,
      referer: referer,
      error: error || '服务器因为一些复杂的原因出错了，Hmmmmm....稍等再试试？'
    });
  };

  next();
};
